package com.xuecheng.search.service;

import com.xuecheng.api.search.model.dto.CoursePubIndexDTO;
import com.xuecheng.api.search.model.qo.QueryCoursePubModel;
import com.xuecheng.common.domain.page.PageRequestParams;
import com.xuecheng.common.domain.page.PageVO;
import com.xuecheng.common.domain.response.RestResponse;

/**
 * 课程搜索服务层
 */
public interface CoursePubSearchService {
    /**
     * 课程搜索
     *
     * @param pageParams 分页参数
     * @param queryModel 条件查询
     * @return 分页查询结果对象
     */
    PageVO<CoursePubIndexDTO> coursePubIndexByCondition(PageRequestParams pageParams, QueryCoursePubModel queryModel);

    /**
     * 根据id查询课程发布数据
     *
     * @param coursePubId id
     * @return 课程发布数据
     */
    CoursePubIndexDTO getCoursePubIndexById(Long coursePubId);


    /**
     * 根据课程发布Id查询课程发布索引数据
     * @param coursePubId
     * @return
     */
    RestResponse<CoursePubIndexDTO> getCoursePubIndexById4s(Long coursePubId);
}
